package cn.achao.csr.api.model.entity;

import java.util.Date;
import java.io.Serializable;
import cn.achao.csr.base.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * (SysDept)实体类
 *
 * @author achao
 * @since 2025-02-05 21:59:40
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SysDept extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 121626067991150009L;

    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id = super.getId();
    /**
     * 父部门id
     */
    private Long parentId;
    /**
     * 祖级列表
     */
    private String ancestors;
    /**
     * 部门名称
     */
    private String deptName;
    /**
     * 显示顺序
     */
    private Integer orderNum;
    /**
     * 负责人
     */
    private String leader;
    /**
     * 联系电话
     */
    private String phone;
    /**
     * 邮箱
     */
    private String email;
    /**
     * 部门状态
     */
    private String status;
    /**
     * 创建者
     */
    private String createBy;
    /**
     * 更新者
     */
    private String updateBy;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * 更新时间
     */
    private Date updateTime;
    /**
     * 是否删除
     */
    private Boolean isDel;
    /**
     * 备注
     */
    private String remark;

    /**
     * INSERT INTO `csr`.`leaf_alloc` (`biz_tag`, `max_id`, `step`, `description`)
     * VALUES ('seq_sys_dept', 1, 100, 'SysDept主键');
     * @return
     */
    @Override
    public String sequenceCode() {
        return "seq_sys_dept";
    }
    
    public SysDept(Boolean generateId) {
        super(generateId);
    }
}

